﻿
using NUnit.Framework;
using Occt;

namespace TxCAD.Test.Unit.Wrapper
{
    [TestFixture]
    public class ValueTypeTests
    {
        [Test]
        public void BaseFunctionality()
        {
            // Verify value type
            var p1 = new gp_Pnt(1, 2, 3);
            var p2 = p1;
            p1.X = 4;
            Assert.AreNotEqual(p1, p2);

            // Test general function
            Assert.AreEqual(3, p1.Distance(p2));

            // Test bridge to native
            Assert.AreEqual(new gp_Pnt(-2, 2, 3), p1.Mirrored(p2));

            // Test bridge to native as reference

            // Test operator overloading
            Assert.AreEqual(p1.Translated(new gp_Vec(p2.XYZ)), p1 + p2);
        }

        //--------------------------------------------------------------------------------------------------

    }
}